package com.gdust.hzx.manager.mapper;

import com.gdust.hzx.model.dto.system.AssginMenuDto;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * ClassName: SysRoleMenuMapper
 * Package: com.gdust.spzx.manager.mapper
 * Description:
 *
 * @Author syun
 * @Create 2024/11/24 17:01
 * @Version 1.0
 */
@Mapper
public interface SysRoleMenuMapper {
    /**
     * 查询角色分配过菜单id列表
     * @param roleId 角色ID，用于查询角色已分配的菜单
     * @return 菜单id列表
     */
    List<Long> findSysRoleMenuByRoleId(Long roleId);

    /**
     * 先删除角色分配菜单数据
     * @param roleId 角色id
     */
    void deleteByRoleId(Long roleId);

    /**
     * 保存分配数据
     * @param assginMenuDto 请求参数实体类
     */
    void doAssign(AssginMenuDto assginMenuDto);

    /**
     * 把父菜单isHalf半开状态 1
     * @param parentMenuId
     */
    void updateSysRoleMenuIsHalf(Long parentMenuId);
}
